In recent time, with higher configurations of block objects, e.g., supporting automatic thin provisioning, advanced snaps, and deduplication, among other features, high-end storage products (e.g., VNX2® of EMC Corporation®) have become powerful in their functions so as to serve different kinds of business demands Typically, such advanced features share the same underlying technology to construct a considerable number of upper block objects, such as logical unit numbers (LUNs), snaps, and snap LUNs, etc., and at the same time provide cutting-edge capabilities. However, such advancements also result in burdening a storage processor (e.g., VNX2 storage processor) especially when the storage processor is booting up.
Generally, a storage product with traditional dual-controller architecture (e.g., VNX2 of EMC Corporation) may support a capability of responding to external production workloads from two storage processors. Typically, internally, under the control of load balance, block objects may be owned only on one of the storage processors, and due to this implementation, when a storage processor is booting from normal reboot or crash, some block objects like LUNs, snaps and snap LUNs may be immediately be failed back to an original storage processor booting up based on an overall load balancing mechanism, which may result in a relatively huge internal workload. Such transient internal workload may result two major issues for the booting up storage processor. Firstly, performance of a storage processor may be considerably degraded, and response to a workload serving an external host may be slowed down. Secondly, time out of failing back block objects may cause interruption of production.
Conventionally, a block object to be failed back may be randomly picked up without knowledge of an underlying shared file system. In general, when a system is configured with massive block objects and in some high I/O profiling environment, much time may be taken for all block objects to be failed back. In general, because it may be infeasible to make all block objects online and ready on time, a storage processor may finally crash; and graver still, other storage processors might also crash at the same time. In general, such a situation may be grave, because it may cause service interruption in a user's production environment, such that storage products (e.g., VNX2 of EMC Corporation) may not fit into some types of production environments, e.g., the popular Open Stack environment.